/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package smedim.bean;

import java.io.Serializable;
import java.time.LocalDate;
import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import smedim.entidade.Convenio;
import smedim.entidade.Faturamento;
import smedim.rn.ConvenioRN;
import smedim.rn.FaturamentoRN;

/**
 *
 * @author Mikael Lima
 */
@ManagedBean
@RequestScoped
public class FaturamentoPorConvenioBean implements Serializable {

    private final FaturamentoRN rn = new FaturamentoRN();
    private final ConvenioRN rnC = new ConvenioRN();
    private List<Faturamento> faturamentos;
    private List<Convenio> convenios;
    private Convenio convenio;

    private Integer ano = LocalDate.now().getYear();
    private Integer mes = LocalDate.now().getMonthValue();
    private Double total;
    private Double totalGeral;
    private Long num;
    private Long numGeral;

    public List<Convenio> getConvenios() {
        convenios = rnC.obterTodos();
        return convenios;
    }

    public List<Faturamento> getFaturamentos() {
        faturamentos = rn.obterPorConvenioEPorMes(convenio, mes, ano);
        return faturamentos;
    }

    public Long getNum() {
        num = rn.obterTotalDeAtendimentosPorConvenioEPorMes(convenio, mes, ano);
        return num;
    }

    public Long getNumGeral() {
        numGeral = rn.obterTotalDeAtendimentosPorMes(mes, ano);
        return numGeral;
    }

    public double getTotal() {
        total = rn.obterTotalPorConvenioEPorMes(convenio, mes, ano);
        return total;
    }

    public double getTotalGeral() {
        totalGeral = rn.obterTotalPorMes(mes, ano);
        return totalGeral;
    }

    public Integer getAno() {
        return ano;
    }

    public void setAno(Integer ano) {
        this.ano = ano;
    }

    public Integer getMes() {
        return mes;
    }

    public void setMes(Integer mes) {
        this.mes = mes;
    }

    public Convenio getConvenio() {
        return convenio;
    }

    public void setConvenio(Convenio convenio) {
        this.convenio = convenio;
    }

}
